package cn.edu.wynu.operator;

public class CalculateOperatorLearn {
    public static void main(String[] args) {
        // 1.整数除法
        div();

        // 2.求模运算,就是求余数
        mod();

        // 3.自增运算,就是给变量的值加1,语法如下: 变量名++ 或者 ++变量名
        plusBySelf();
    }

    private static void plusBySelf() {
        System.out.println("3.自增运算");
        int a2 = 10;
        // a2++ 相当于 a2 = a2 + 1
        a2++;
        System.out.println("a2 = " + a2);

        // 自增运算符放在变量前面和后面有一点区别:
        // 1.如果自增运算符放在变量后面,那么变量先使用,再自增
        // 2.如果自增运算符放在变量前面,那么变量先自增,再使用
        int b2 = 10;
        int c2 = 10;
        System.out.println("++b2 = " + ++b2);
        System.out.println("c2++ = " + c2++);
        System.out.println("b2 = " + b2);
        System.out.println("c2 = " + c2);
    }

    private static void mod() {
        System.out.println("2.求模运算");
        int a1 = 7;
        int b1 = 5;
        int c1 = a1 % b1;
        System.out.println("a1 % b1 = " + c1);

        System.out.println("*".repeat(50));
    }

    private static void div() {
        System.out.println("1.整数除法");
        // 加减乘除中需要注意除法
        // 计算机里面整数做除法的时候,不会算精确值,只会保留整数部分结果
        int a = 5;
        int b = 2;
        int c = a / b;
        System.out.println("a / b = " + c);

        // 要想得到精确值,需要把其中一个数转成浮点数
        double d = (double) a / b;
        System.out.println("a / b = " + d);

        System.out.println("*".repeat(50));
    }
}
